1. Изменение через интерфейс производятся по средствам REST. Для этого реализован отдельный раздел, в котором можно выбрать справочник, найти в нём нужную запись и изменить или удалить её. Также реализована возможность добавить новую запись.
  2. Изменения получаемые в автоматическом режиме реализованы через топик кафки ervu.nsi.change:
    1. При создании новой записи указывается тип справочник и параметры записи;
    2. При изменении существующей записи указывается её идентафикатор и новые парамеры;
  3. После изменения записи в сервисе НСИ:
    1. Если запись изменена в классическом справочнике, данные об изменённом объекту публикуются в топик ervu.nsi.changed и сервисы, подписанные на топик получает изменения, сохраняя их в свою БД для дальнейшего использования.
    2. Если запись изменена в справочнике человекочитаемых наименований, то событие изменения справочника публикуется в топик nsi.front.labels.changed. Сервисы подписанные на этот топик, при получении такого сообщения обращаются в ervu-nsi-service методом GET и получают полный справочник, обновляя его в своём кэше. Для этого используется библиотека ervu-front-labels-lib.

      ervu-nsi-service
      ervu.nsi.change
      nsi.front.labels.changed
      ervu.nsi.changed
      HTTPS
      service
      service
      HTTPS
      КЭШ
  4. На стороне сервиса, испльзующего НСИ, в БД должны быть реализована таблицы для хранения справочников и их оперативного использования. Обновление справочников просиходит при получении сообщения в топик.
    !!!Сервисы хранят только те справочники, которые необходимы им для работы.
Написать комментарий...